package org.dromara.crawler.mongo.mongodomain;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.mongoplus.annotation.ID;
import com.mongoplus.annotation.collection.CollectionField;
import com.mongoplus.annotation.collection.CollectionName;
import com.mongoplus.enums.IdTypeEnum;
import lombok.Data;
import org.bson.Document;

import java.util.Date;

@Data
@CollectionName(value = "element_event", database = "NEWS")
public class ElementEvent {

    @ID(type = IdTypeEnum.ASSIGN_ID)
    private String id;

    @CollectionField("source_doc_id")
    private String sourceId;

    private String source;
    /**
     * event_first_level
     * 事件一级标题
     */
    @CollectionField("event_first_level")
    private String eventFirstLevel;
    /**
     * event_second_level
     * 事件二级标题
     */
    @CollectionField("event_second_level")
    private String eventSecondLevel;

    /**
     * event_id
     * 事件id
     */
    @CollectionField("event_id")
    private String eventId;
    /**
     * event_name
     * 事件名称
     */
    @CollectionField("event_name")
    private String eventName;
    /**
     * time_position_moment
     * 时间位置
     */
    @CollectionField("time_position_moment")
    private Date timePositionMoment;

    /**
     * space_position_place_name
     * 空间位置
     */
    @CollectionField("space_position_place_name")
    private String spacePositionPlaceName;

    /**
     * space_position_place_name
     * 空间位置
     */
    @CollectionField("space_position_region")
    private String spacePositionRegion;
    /**
     * space_position_coordinate
     * 空间位置坐标
     */
    @CollectionField("space_position_coordinate")
    private String spacePositionCoordinate;
    /**
     * relationship_characteristics_subject_person
     * 关系特性-主体-人
     */
    @CollectionField("relationship_characteristics_subject_person")
    private String relationshipCharacteristicsSubjectPerson;

    /**
     * relationship_characteristics_subject_organization
     * 关系特性-主体-组织
     */
    @CollectionField("relationship_characteristics_subject_organization")
    private String relationshipCharacteristicsSubjectOrganization;
    /**
     * relationship_characteristics_related_party_person
     * 关系特性-相关方-人
     */
    @CollectionField("relationship_characteristics_related_party_person")
    private String relationshipCharacteristicsRelatedPartyPerson;

    /**
     * relationship_characteristics_related_party_organization
     * 关系特性-相关方-组织
     */
    @CollectionField("relationship_characteristics_related_party_organization")
    private String relationshipCharacteristicsRelatedPartyOrganization;
    /**
     * attribute_event_type
     * 属性-事件类型
     */
    @CollectionField("attribute_event_type")
    private String attributeEventType;
    /**
     * attribute_background
     * 属性-背景
     */
    @CollectionField("attribute_background")
    private String attributeBackground;

    /**
     * attribute_key_action
     * 属性-关键行动
     */
    @CollectionField("attribute_key_action")
    private String attributeKeyAction;
    /**
     * emotion_characteristics
     * 情感特性
     */
    @CollectionField("emotion_characteristics")
    private String emotionCharacteristics;
    /**
     * evolution_characteristics
     * 进展特性
     */
    @CollectionField("evolution_characteristics")
    private String evolutionCharacteristics;

    /**
     * attribute_military_means
     * 属性-军事手段
     */
    private String attributeMilitaryMeans;

    private String attributeCasualty;

    private String attributeStrategicGoal;

    private String attributeCommandLevel;

    private String attributePolicyTool;

    private String attributeEconomicIndicator;

    @CollectionField("abstract")
    private String summary;

    /**
     * 1: 已完成
     * 0: 训练中
     */
    private String status;

    @JsonIgnore
    private Object _id;




}
